/**
 * 多线程下载 <br/>
 * 文档: https://blog.csdn.net/wyjsssss/article/details/107167823 <br/>
 *
 * <p>
 * 基本步骤 <br/>
 * <p>1、本地先创建一个大小跟服务器文件相同大小的临时文件</p>
 * <p>2、计算分配几个线程去下载服务器上的资源，知道每个线程下载文件的位置。文件的长度/3(线程个数)=得到每个线程下载文件的大小，假如文件长度为10
 * 线程1负责区域：0-2；<br/>
 * 线程2负责区域：3-5；<br/>
 * 线程3负责区域：6-文件末尾 <br/> <br/>
 * 每一个线程下载的起始位置计算方式 <br/>
 * 开始位置： <br/>
 * （线程id-1）每一块大小 <br/>
 * 结束位置： <br/>
 * （线程id每一块大小）-1 </p>
 * <p>3、开启每一个线程下载对应位置的文件</p>
 * <p>4、如果所有的线程都把自己负责的区域下载完毕，那么就删除临时文件</p>
 * </p>
 * @author shenguangyang
 */
package org.example.multithreading;